package com.hn.kiss.modules.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hn.kiss.config.common.MyException;
import com.hn.kiss.config.common.ParmException;
import com.hn.kiss.modules.sys.entity.User;

/**
 * <p>
 * 用户 服务类
 * </p>
 *
 * @author zxy
 * @since 2020-08-06
 */
public interface IUserService extends IService<User> {

    User getByPk(String id);

    boolean updateByPk(User user);

    boolean removeByPk(String id);

    /**
     * 通过用户名,获取用户信息
     * @param userName 用户名(手机号/邮箱/身份证号)
     * @return
     */
    User getByUserName(String userName);

    /**
     * 添加默认新用户
     * @param user
     * @return
     * @throws MyException
     */
    boolean add(User user) throws ParmException;

    /**
     * 修改密码
     * @param id
     * @param oldpwd
     * @param newpwd
     * @return
     */
    boolean updatePwd(String id, String oldpwd, String newpwd) throws MyException;

    /**
     * 校验用户,如果用户临时登录过,返回临时用户id
     * @param phone
     * @param email
     * @param idno
     * @return
     */
    String checkUser(String phone, String email, String idno) throws ParmException;


}
